( ********************************************************************** File: ETSIPRI1.F Author: Dencom Inc. - www.dencom-inc.com Date: March 20, 1998 Description: This file contains variable and constant declarations, various user defined words and words used to get user input. ********************************************************************** ) TCLR STATE_ON ( ********** Initialize VARIABLES and CONSTANTS ********** ) 0 VARIABLE CR-VALUE 0 VARIABLE CR-FLAG 0 VARIABLE CHANNEL-NUMBER 0 VARIABLE CHANNEL-NUMBER-HEX 12 ALLOT 0 VARIABLE CALLED-NUMBER 12 ALLOT 0 VARIABLE CALLING-NUMBER 12 ALLOT 1 VARIABLE T1? ( T1=1, E1=0 ) 0 VARIABLE SETUP? ( Are we setting up calls? ) 0 VARIABLE LOAD? ( Are we generating a load? ) ( ********** Various User Defined Words ********** ) : INCR_CALLED_NUMBER ( -- ) CALLED-NUMBER @ IF CALLED-NUMBER 10 STR># DROP 1+ CALLED-NUMBER 10 #>STR ENDIF ; : INCR_CALLING_NUMBER ( -- ) CALLING-NUMBER @ IF CALLING-NUMBER 10 STR># DROP 1+ CALLING-NUMBER 10 #>STR ENDIF ; : EXTRACT_CR_VALUE ( -- ) 2 =CR_LENGTH $MSG-CRVALUE @ =CN_CR_VALUE $MSG-CRFLAG @ 0X01 XOR =CN_CR_FLAG ; ( ********** Get User Input ********** ) : GET_CR_VALUE ( SETUP | DISCONNECT -- ) 0 prompt C! PROMPT" Enter the Call Reference Value (0-32767): " prompt 10 STR># IF DUP 0 32767 BETWEEN? IF CR-VALUE ! ELSE DROP ENDIF ENDIF SETUP? @ IF ( SETUP message ) 101 1 START_TIMER ELSE 105 1 START_TIMER ( DISCONNECT message ) ENDIF END_PROMPT ; : GET_CR_FLAG ( -- ) 0 prompt C! PROMPT" Enter the Call Reference Flag (Orig=0, Dest=1): " prompt 10 STR># IF DUP 0 1 BETWEEN? IF CR-FLAG ! ELSE DROP ENDIF ENDIF 106 1 START_TIMER END_PROMPT ; : GET_CHANNEL_NUMBER ( -- ) 0 prompt C! PROMPT" Enter the channel number (1-31) (press RETURN to exclude): " prompt 10 STR># IF DUP 1 31 BETWEEN? IF CHANNEL-NUMBER ! ELSE DROP ENDIF ELSE 0 CHANNEL-NUMBER ! ENDIF 102 1 START_TIMER END_PROMPT ; : GET_CALLED_NUMBER ( -- ) 0 prompt C! PROMPT" Enter the called number (press RETURN to exclude): " prompt DUP C@ IF CALLED-NUMBER 16 CMOVE ELSE DROP 0 CALLED-NUMBER ! ENDIF 103 1 START_TIMER END_PROMPT ; : GET_CALLING_NUMBER ( -- ) 0 prompt C! PROMPT" Enter the calling number (press RETURN to exclude): " prompt DUP C@ IF CALLING-NUMBER 16 CMOVE ELSE DROP 0 CALLING-NUMBER ! ENDIF 104 1 START_TIMER END_PROMPT ;